package com.vichat.user.entity;


import javax.persistence.*;

/***************
 *author: autogen
 *version: 2019-01-17 14:42:26.94
 */
@Entity
@Table(name = "user_party_company", catalog = "userdb")
public class UserPartyCompany implements java.io.Serializable {

    private static final long serialVersionUID = 1L;


    public static final String TABLE = "user_party_company";

    /**
     * 公司编号
     */
    public static final String ALIAS_COMPANY_ID = "company_id";
    /**
     * 企业编号
     */
    public static final String ALIAS_PARTY_ID = "party_id";
    /**
     * 企业名称
     */
    public static final String ALIAS_COMPANY_NAME = "company_name";
    /**
     * 企业地址
     */
    public static final String ALIAS_COMPANY_ADDRESS = "company_address";
    /**
     * 账号
     */
    public static final String ALIAS_ACCOUNT = "account";
    /**
     * 法人姓名
     */
    public static final String ALIAS_USER_NAME = "user_name";
    /**
     * 数据 0 无效 1 有效
     */
    public static final String ALIAS_STATE = "state";
    /**
     * 创建时间
     */
    public static final String ALIAS_CREATE_TIME = "create_time";
    /**
     * 修改时间
     */
    public static final String ALIAS_UPDATE_TIME = "update_time";
    /**
     * 0 按人数收费 1 按账号有效期收费
     */
    public static final String ALIAS_FREE_TYPE = "free_type";
    /**
     * 授权人数(0 收费时填写,-1为不限制人数)
     */
    public static final String ALIAS_AUTH_NUMBER = "auth_number";
    /**
     * 录制开关
     */
    public static final String ALIAS_RECORD = "record";
    /**
     * 代理商编号
     */
    public static final String ALIAS_AGENT_ID = "agent_id";
    /**
     * 联系方式
     */
    public static final String ALIAS_TEL = "tel";
    /**
     *
     */
    public static final String ALIAS_COMPANY_CODE = "company_code";
    /**
     * 支持功能
     */
    public static final String ALIAS_FUNCTION = "function";
    /**
     * 授权月数
     */
    public static final String ALIAS_AUTH_MONTH = "auth_month";


    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "company_id", unique = true, nullable = false)
    public java.lang.Long companyId;

    @Column(name = "party_id")
    public java.lang.Long partyId;

    @Column(name = "company_name")
    public java.lang.String companyName;

    @Column(name = "company_address")
    public java.lang.String companyAddress;

    @Column(name = "account")
    public java.lang.String account;

    @Column(name = "user_name")
    public java.lang.String userName;

    @Column(name = "state")
    public java.lang.Long state = 1l;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "create_time")
    public java.util.Date createTime;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "update_time")
    public java.util.Date updateTime;

    @Column(name = "free_type")
    public java.lang.Long freeType;

    @Column(name = "auth_number")
    public java.lang.Long authNumber;

    @Column(name = "record")
    public java.lang.Long record;

    @Column(name = "agent_id")
    public java.lang.Long agentId;

    @Column(name = "tel")
    public java.lang.String tel;

    @Column(name = "company_code")
    public java.lang.String companyCode;

    @Column(name = "function")
    public java.lang.String function;

    @Column(name = "auth_month")
    public java.lang.Long authMonth;


    public java.lang.Long getCompanyId() {
        return this.companyId;
    }

    public void setCompanyId(java.lang.Long value) {
        this.companyId = value;
    }

    public java.lang.Long getPartyId() {
        return this.partyId;
    }

    public void setPartyId(java.lang.Long value) {
        this.partyId = value;
    }

    public java.lang.String getCompanyName() {
        return this.companyName;
    }

    public void setCompanyName(java.lang.String value) {
        this.companyName = value;
    }

    public java.lang.String getCompanyAddress() {
        return this.companyAddress;
    }

    public void setCompanyAddress(java.lang.String value) {
        this.companyAddress = value;
    }

    public java.lang.String getAccount() {
        return this.account;
    }

    public void setAccount(java.lang.String value) {
        this.account = value;
    }

    public java.lang.String getUserName() {
        return this.userName;
    }

    public void setUserName(java.lang.String value) {
        this.userName = value;
    }

    public java.lang.Long getState() {
        return this.state;
    }

    public void setState(java.lang.Long value) {
        this.state = value;
    }

    public java.util.Date getCreateTime() {
        return this.createTime;
    }

    public void setCreateTime(java.util.Date value) {
        this.createTime = value;
    }

    public java.util.Date getUpdateTime() {
        return this.updateTime;
    }

    public void setUpdateTime(java.util.Date value) {
        this.updateTime = value;
    }

    public java.lang.Long getFreeType() {
        return this.freeType;
    }

    public void setFreeType(java.lang.Long value) {
        this.freeType = value;
    }

    public java.lang.Long getAuthNumber() {
        return this.authNumber;
    }

    public void setAuthNumber(java.lang.Long value) {
        this.authNumber = value;
    }

    public java.lang.Long getRecord() {
        return this.record;
    }

    public void setRecord(java.lang.Long value) {
        this.record = value;
    }

    public java.lang.Long getAgentId() {
        return this.agentId;
    }

    public void setAgentId(java.lang.Long value) {
        this.agentId = value;
    }

    public java.lang.String getTel() {
        return this.tel;
    }

    public void setTel(java.lang.String value) {
        this.tel = value;
    }

    public java.lang.String getCompanyCode() {
        return this.companyCode;
    }

    public void setCompanyCode(java.lang.String value) {
        this.companyCode = value;
    }

    public java.lang.String getFunction() {
        return this.function;
    }

    public void setFunction(java.lang.String value) {
        this.function = value;
    }

    public java.lang.Long getAuthMonth() {
        return this.authMonth;
    }

    public void setAuthMonth(java.lang.Long value) {
        this.authMonth = value;
    }


    public UserPartyCompany() {
    }

    public UserPartyCompany(boolean qryflag) {
        if (qryflag) {
            this.companyId = null;
            this.partyId = null;
            this.companyName = null;
            this.companyAddress = null;
            this.account = null;
            this.userName = null;
            this.state = null;
            this.createTime = null;
            this.updateTime = null;
            this.freeType = null;
            this.authNumber = null;
            this.record = null;
            this.agentId = null;
            this.tel = null;
            this.companyCode = null;
            this.function = null;
            this.authMonth = null;
        }
    }


    public UserPartyCompany(
            java.lang.Long inCompanyId,
            java.lang.Long inPartyId,
            java.lang.String inCompanyName,
            java.lang.String inCompanyAddress,
            java.lang.String inAccount,
            java.lang.String inUserName,
            java.lang.Long inState,
            java.util.Date inCreateTime,
            java.util.Date inUpdateTime,
            java.lang.Long inFreeType,
            java.lang.Long inAuthNumber,
            java.lang.Long inRecord,
            java.lang.Long inAgentId,
            java.lang.String inTel,
            java.lang.String inCompanyCode,
            java.lang.String inFunction,
            java.lang.Long inAuthMonth
    ) {
        super();
        this.companyId = inCompanyId;
        this.partyId = inPartyId;
        this.companyName = inCompanyName;
        this.companyAddress = inCompanyAddress;
        this.account = inAccount;
        this.userName = inUserName;
        this.state = inState;
        this.createTime = inCreateTime;
        this.updateTime = inUpdateTime;
        this.freeType = inFreeType;
        this.authNumber = inAuthNumber;
        this.record = inRecord;
        this.agentId = inAgentId;
        this.tel = inTel;
        this.companyCode = inCompanyCode;
        this.function = inFunction;
        this.authMonth = inAuthMonth;
    }


    @Transient
    private String iccid;

    public String getIccid() {
        return iccid;
    }

    public void setIccid(String iccid) {
        this.iccid = iccid;
    }

    @Transient
    private String contactName;

    public String getContactName() {
        return contactName;
    }

    public void setContactName(String contactName) {
        this.contactName = contactName;
    }

    @Transient
    private String agentCompanyName;

    public String getAgentCompanyName() {
        return agentCompanyName;
    }

    public void setAgentCompanyName(String agentCompanyName) {
        this.agentCompanyName = agentCompanyName;
    }


}

